Fix PAE boot.
authorkaf24@firebug.cl.cam.ac.uk <kaf24@firebug.cl.cam.ac.uk>
Sat, 20 Aug 2005 10:01:20 +0000 (10:01 +0000)
committerkaf24@firebug.cl.cam.ac.uk <kaf24@firebug.cl.cam.ac.uk>
Sat, 20 Aug 2005 10:01:20 +0000 (10:01 +0000)
Signed-off-by: Keir Fraser <keir@xensource.com>
Config.mk
linux-2.6-xen-sparse/arch/xen/i386/mm/init.c

index 76180e6b26c7d9e5e0ce82e6b49c8bfc3c0f846d..2f2183e20ea6dc28e46b3287e4c9a89e78c179d8 100644 (file)
--- a/Config.mk
+++ b/Config.mk
@@ -3,7 +3,7 @@
 # Currently supported architectures: x86_32, x86_64
 XEN_COMPILE_ARCH    ?= $(shell uname -m | sed -e s/i.86/x86_32/)
 XEN_TARGET_ARCH     ?= $(XEN_COMPILE_ARCH)
-XEN_TARGET_X86_PAE  ?= n
+XEN_TARGET_X86_PAE  ?= y
 
 # Tools to run on system hosting the build
 HOSTCC     = gcc
index 5016b86a8625a5191f43d223d13cb84bc99773f3..78d5058f92cd01d4434ba7b0e3c76e78cd62ad70 100644 (file)
@@ -352,13 +352,6 @@ static void __init pagetable_init (void)
        swapper_pg_dir = pgd_base;
        init_mm.pgd    = pgd_base;
 
-#ifdef CONFIG_X86_PAE
-       int i;
-       /* Init entries of the first-level page table to the zero page */
-       for (i = 0; i < PTRS_PER_PGD; i++)
-               set_pgd(pgd_base + i, __pgd(__pa(empty_zero_page) | _PAGE_PRESENT));
-#endif
-
        /* Enable PSE if available */
        if (cpu_has_pse) {
                set_in_cr4(X86_CR4_PSE);
@@ -383,17 +376,6 @@ static void __init pagetable_init (void)
        page_table_range_init(vaddr, 0, pgd_base);
 
        permanent_kmaps_init(pgd_base);
-
-#if 0 /* def CONFIG_X86_PAE */
-       /*
-        * Add low memory identity-mappings - SMP needs it when
-        * starting up on an AP from real-mode. In the non-PAE
-        * case we already have these mappings through head.S.
-        * All user-space mappings are explicitly cleared after
-        * SMP startup.
-        */
-       set_pgd(&pgd_base[0], pgd_base[USER_PTRS_PER_PGD]);
-#endif
 }
 
 #if defined(CONFIG_PM_DISK) || defined(CONFIG_SOFTWARE_SUSPEND)